package com.hw.mapreduce;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import com.huaban.analysis.jieba.JiebaSegmenter;
import com.huaban.analysis.jieba.SegToken;
import com.huaban.analysis.jieba.JiebaSegmenter.SegMode;


@SpringBootApplication
public class MapReduceApplication {

	public static void main(String[] args) {
		
		/**
		 * **********************jieba分词的简单使用********************
		 */
		JiebaSegmenter segmenter = new JiebaSegmenter();
        //将结果转成分词进行统计
        List<String> list = new ArrayList<String>();
        String sentence="中国人民解放军是中国人民的钢铁长城";
        
        /**************************************第一种方式************************************************************/
        list =segmenter.sentenceProcess(sentence);
        System.out.println("第一种分词方式：");
        for(String word:list){
        	System.out.print(word+"	");
        }
        //统计固定分词出现的频率
        System.out.println("\n - 计算'人民'出现的次数");
        System.out.println("人民 " + Collections.frequency(list, "人民"));
        
        /***************************************第二种方式***********************************************************/
//        SegMode.INDEX 分词比 SegMode.SEARCH 的分词模式更加精细，默认是index模式
//        List<SegToken> tokens=segmenter.process(sentence, SegMode.INDEX);
        List<SegToken> tokens=segmenter.process(sentence, SegMode.SEARCH);
        System.out.println("第二种分词方式：");
        for(SegToken token:tokens){
        	System.out.println(token.word + ":开始位置"+token.startOffset);
        }
        
		SpringApplication.run(MapReduceApplication.class, args);
	}

}
